package com.tourism.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.tourism.domain.dto.attraction.AttractionQueryDTO;
import com.tourism.domain.entity.Attraction;
import com.tourism.domain.vo.AttractionVO;

import java.util.List;

/**
 * 景点服务接口
 *
 * @author lucky
 */
public interface AttractionService extends IService<Attraction> {

    /**
     * 获取分页数据
     *
     * @param pageIndex          页码
     * @param pageSize           页大小
     * @param attractionQueryDTO 查询条件
     * @return 分页数据
     */
    Page<Attraction> getPage(Integer pageIndex, Integer pageSize, AttractionQueryDTO attractionQueryDTO);

    /**
     * 获取所有景点信息
     *
     * @return 景点信息列表
     */
    List<AttractionVO> getAllAttraction(AttractionQueryDTO attractionQueryDTO);

    /**
     * 根据id获取景点信息
     *
     * @param id 景点id
     * @return 景点信息
     */
    AttractionVO getAttractionById(Long id);
}
